Nginx reverse proxy and Let’s Encrypt

Pada tulisan kali ini kita akan mencoba membuat reverse proxy menggunakan nginx dan menerapkan SSL menggunakan layanan let’sencrypt. Maka dari itu pada tutorial kali ini menggunakan dua mesin ( computer ) dan domain test1.blog.wistau.com.
Computer 1
Didalanya terinstall webserver apache2, untuk cara installnya bisa dilihat di LAMP ( Linux, Apache, Mysql/Mariadb, PHP ) dan computer ini mempuunyai ip 192.168.11.111.
Computer 2
Ini yang nanti akan kita install dan konfig reverse proxy dan let’sencrypt

Install nginx
Silahkan masuk computer 2 dan jangan lupa pastikan posisi kita sebagai root. Langkah awal yang perlu dilakukan adalah install nginx dengan cara melakukan perintah.

apt install nginx

Konfigurasi nginx
Untuk membuat reverse proxy menggunakan nginx caranya cukup mudah, caranya adalah mirip Ketika kita membuat server block atau virtualhost di nginx. buat file virtualhost di nginx dengan cara.

nano /etc/nginx/sites-available/test1

isi dari file test1 adalah seperti dibawah ini

server {
    listen 80;
    server_name test1.blog.wistau.com;

    location / {
        proxy_pass http://192.168.11.111:8080;
        proxy_set_header Host $host;
        proxy_set_header X-Real-IP $remote_addr;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        proxy_set_header X-Forwarded-Proto $scheme;
    }
}

Jangan lupa untuk menyimpanya dan tinggal kita aktifkan dengan perintah seperti dibawah ini.

ln -s /etc/nginx/sites-available/test1 /etc/nginx/sites-enabled/test1

silahkan cek ada error atau tidak, jika tidak bisa dilanjut dengan merestart service nginx

nginx -t 
systemctl restart nginx 

Let’s Encrypt
Selanjutnya kita akan melakukan setting Let’s Encrypt, yang perlu kita lakukan adalah memasang repository certbot dengan cara.

add-apt-repository ppa:certbot/certbot

dan ketikan perintah

apt update 

setelah proses update selesai install certbot untuk nginx dengan cara

apt install python-certbot-nginx

setelah certbot nginx sudah terinstall untuk mensetting ssl di reverse proxy nginx ini caranya adalah ketikan perintah berikut ini

certbot --nginx -d test1.blog.wistau.com

apabila ada dialog seperti dibawah ini

Please choose whether or not to redirect HTTP traffic to HTTPS, removing HTTP access.
-------------------------------------------------------------------------------
1: No redirect - Make no further changes to the webserver configuration.
2: Redirect - Make all requests redirect to secure HTTPS access. Choose this for
new sites, or if you're confident your site works on HTTPS. You can undo this
change by editing your web server's configuration.
-------------------------------------------------------------------------------
Select the appropriate number [1-2] then [enter] (press 'c' to cancel):

Silahkan pilih nomor dua dengan cara ketikan nomor 2 lalu enter

Oke sampe disini tutorial membuat reverse proxy menggunakan nginx dan let’sencrypt

Leave a Reply

Your email address will not be published. Required fields are marked *

WordPress Appliance - Powered by TurnKey Linux